package org.jeecg.modules.ssqy.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.ssqy.entity.Ssqy;
import java.util.List;
import java.util.Map;

/**
 * 功能描述
 *
 * @author: scott
 * @date: 2022年05月12日 4:24 下午
 */
public interface SsqyMapper extends BaseMapper<Ssqy> {
    // 根据社会信用代码获取市场主体信息
    Ssqy getScztByShxydm(@Param("shxydm") String shxydm);
    //    获取所有市场主体信息
     List<Ssqy> listAll();
    //    获取市场主体分页信息
     List<Ssqy> list(@Param("pageNum") Number pageNum,
                           @Param("pageSize") Number pageSize,
                           @Param("nsrmc") String nsrmc);
     List getScztGeoJson(@Param("pageNum") Number pageNum,
                           @Param("pageSize") Number pageSize,
                               @Param("nsrmc") String nsrmc);

    /**
     * 查询市场主体数量
     * @param nsrmc
     * @return
     */
     int countSczt(@Param("nsrmc") String nsrmc);

    /**
     * 更新市场主体的经纬度geom
     * @param shxydm
     * @param lng
     * @param lat
     */
     void updateScztGeom(@Param("shxydm") String shxydm,
                               @Param("lng")double lng,
                               @Param("lat")double lat);

    List<Map> getScztByPolygon(@Param("polygon") String polygon);

    /**
     * 根据功能区名称、主体类型【必填】、排行数查询企业注册资本Top前列企业
     * @param gnqmc
     * @param ztlx
     * @param pm
     * @return
     */
    List<Map> getQyZczbTopN(@Param("gnqmc")String gnqmc,
                            @Param("ztlx")String ztlx,
                            @Param("pm")int pm);

    /**
     * 根据功能区名称，主体类型【可选】获取注册时长主体企业数量
     * @param gnqmc
     * @param ztlx
     * @return
     */
    List<Map> getZcScztQysl(@Param("gnqmc")String gnqmc,
                            @Param("ztlx")String ztlx);

}
